package com.ecoolex.hotel.saas.ws;

import java.math.BigDecimal;
import java.util.List;

import com.ecoolex.framework.common.exception.BizException;
import com.ecoolex.framework.common.pojo.Page;
import com.ecoolex.framework.common.pojo.Pagination;
import com.ecoolex.hotel.saas.entity.PresaleCoupon;
import com.ecoolex.hotel.saas.entity.PresaleCouponDistribtion;
import com.ecoolex.hotel.saas.entity.PresaleCouponExpirydate;
import com.ecoolex.hotel.saas.pojo.EditPresaleCouponStep;

public interface PresaleCouponService {
	
	PresaleCoupon getPresaleCouponForUser(Integer preCouponId);
	
	Pagination<PresaleCoupon> queryPresaleCouponForUser(String name,Integer storeId,Integer categoryId,Page page);

	PresaleCoupon getPresaleCoupon(Integer preCouponId);
	
	Pagination<PresaleCoupon> queryPresaleCoupon(String name,Integer storeId,Page page);
	
	PresaleCoupon editPresaleCoupon(EditPresaleCouponStep step, String createUser) throws BizException;
	
	PresaleCoupon onlinePresaleCoupon(PresaleCoupon record, String updateUser) throws BizException;
	
	PresaleCoupon offlinePresaleCoupon(PresaleCoupon record, String updateUser) throws BizException;
	
	Boolean delPresaleCoupon(PresaleCoupon record, String updateUser) throws BizException;
	
	BigDecimal salesUserCommissionAmt(Integer preCouponId, Integer storeId, Integer userId);
	
	List<PresaleCouponDistribtion> queryByPreCouponId(Integer preCouponId);
	
	PresaleCouponExpirydate get(Integer preCouponId);
}
